package com.ruoyi.verify.domain;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonView;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Calendar;
import java.util.Date;

/**
 * 审核成员类
 */
@Data
@NoArgsConstructor
public class VerifyMemberInfo
{
    private static final long serialVersionUID = 1L;

    public interface teamMember {};

    @ExcelIgnore //加此注解表示不匹配此字段
    private Long memberid;

    @JsonView(value = teamMember.class)
    @ExcelIgnore //加此注解表示不匹配此字段
    private String verifytype;


    /** $column.columnComment */
    @ExcelIgnore //加此注解表示不匹配此字段
    @JsonView(value = teamMember.class)
    private String factorycode;

    /** $column.columnComment */
    @ExcelIgnore //加此注解表示不匹配此字段
    private String[] factorycodes;

    @ExcelIgnore //加此注解表示不匹配此字段
    @JsonView(value = teamMember.class)
    private String factoryname;

    /** $column.columnComment */

    @ExcelProperty("手机号")   //加此注解表示匹配此字段
    private String phonenumber;

    /** $column.columnComment */
    @ExcelProperty("工号")   //加此注解表示匹配此字段
    @Excel(name = "工号", type = Excel.Type.IMPORT)
    private String jobnumber;

    /** $column.columnComment */
    @JsonView(value = teamMember.class)
    @ExcelProperty("姓名")   //加此注解表示匹配此字段
    @Excel(name = "姓名", type = Excel.Type.IMPORT)
    private String membername;

    /** $column.columnComment */
    @ExcelProperty("部门")   //加此注解表示匹配此字段
    private String jobunit;

    /** $column.columnComment */
    @ExcelProperty("岗位")   //加此注解表示匹配此字段
    private String position;

    @ExcelProperty("进入审核库时间")   //加此注解表示匹配此字段
    @Excel(name = "进入审核库时间", type = Excel.Type.IMPORT)
    private String enterverifydate;

    @ExcelProperty("擅长范围")   //加此注解表示匹配此字段
    @Excel(name = "擅长范围", type = Excel.Type.IMPORT)
    private String goodrange;

    @ExcelIgnore //加此注解表示不匹配此字段
    private String onjobstatus;

    @ExcelIgnore //加此注解表示不匹配此字段
    private Long planid;
    @ExcelIgnore //加此注解表示不匹配此字段
    private String moudlecode;

    private String moudlename;


    @ExcelIgnore //加此注解表示不匹配此字段
    private String isGroupLeader;

    @ExcelIgnore //加此注解表示不匹配此字段
    private String templateid;

    @ExcelIgnore //加此注解表示不匹配此字段
    @JsonView(value = teamMember.class)
    private String year;

    @ExcelIgnore //加此注解表示不匹配此字段
    @JsonView(value = teamMember.class)
    private String starttime;

    @ExcelIgnore //加此注解表示不匹配此字段
    @JsonView(value = teamMember.class)
    private String endtime;

    @ExcelIgnore //加此注解表示不匹配此字段
    @JsonView(value = teamMember.class)
    private String status;

    @ExcelIgnore //加此注解表示不匹配此字段
    private String currentTime;

    private String newyear;

    @ExcelIgnore //加此注解表示不匹配此字段
    private String bm;

    @ExcelIgnore //加此注解表示不匹配此字段
    private String gs;

    @ExcelIgnore //加此注解表示不匹配此字段
    private String ifexpert;



//    public VerifyMemberInfo() {
//        Calendar date = Calendar.getInstance();
//        this.year = String.valueOf(date.get(Calendar.YEAR));
//    }

    //    public String getFactoryname() {
//        return factoryname;
//    }
//
//    public void setFactoryname(String factoryname) {
//        this.factoryname = factoryname;
//    }
//
//    public Long getVerifytype() {
//        return verifytype;
//    }
//
//    public void setVerifytype(Long verifytype) {
//        this.verifytype = verifytype;
//    }
//
//    public String getFactorycode() {
//        return factorycode;
//    }
//
//    public void setFactorycode(String factorycode) {
//        this.factorycode = factorycode;
//    }
//
//    public void setMemberid(Long memberid)
//    {
//        this.memberid = memberid;
//    }
//
//    public Long getMemberid()
//    {
//        return memberid;
//    }
//    public void setPhonenumber(String phonenumber)
//    {
//        this.phonenumber = phonenumber;
//    }
//
//    public String getPhonenumber()
//    {
//        return phonenumber;
//    }
//    public void setJobnumber(String jobnumber)
//    {
//        this.jobnumber = jobnumber;
//    }
//
//    public String getJobnumber()
//    {
//        return jobnumber;
//    }
//    public void setJobunit(String jobunit)
//    {
//        this.jobunit = jobunit;
//    }
//
//    public String getJobunit()
//    {
//        return jobunit;
//    }
//    public void setPosition(String position)
//    {
//        this.position = position;
//    }
//
//    public String getPosition()
//    {
//        return position;
//    }
//    public void setMembername(String membername)
//    {
//        this.membername = membername;
//    }
//
//    public String getMembername()
//    {
//        return membername;
//    }
//
//    @Override
//    public String toString() {
//        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
//                .append("memberid", getMemberid())
//                .append("phonenumber", getPhonenumber())
//                .append("jobnumber", getJobnumber())
//                .append("jobunit", getJobunit())
//                .append("position", getPosition())
//                .append("membername", getMembername())
//                .toString();
//    }
}
